<?xml version='1.0' encoding='ISO-8859-1' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"   
      xmlns:jb="http://java.sun.com/jsf/composite/componentes"
      xmlns:p="http://primefaces.org/ui">

    <SCRIPT language="JavaScript" type="text/javascript">
                   
        function handleRequestOp(xhr, status, args) {                     
            if(args.validationFailed || !args.CallbackParam) {  
                
            } else {                              
                carDialogOperacion.hide();  
                jQuery('#btnGuardarOp').fadeOut();  
            }
        }  
    </SCRIPT>
    <p:tabView id="tabPrincOp" style="#{applicationMBean.estiloTitulo}">
        <p:tab id="tabPopupOp" title="#{i18n['popup.titulo.orden.fabricacion.operacion']}">
            <h:form onsubmit="return checkSubmit();" id="frmPopupOp">
                <h:panelGrid columns="1" cellpadding="4">
                    <h:outputLabel value="#{i18n['form.orden.fabricacion.datos.generales']}" styleClass="subTitulo"/>
                    <p:separator/>
                    <h:panelGrid columns="4" cellpadding="4">
                        <h:outputLabel value="#{i18n['general.label.id']}" styleClass="label" rendered="#{sessionMBean.accionDetalle != applicationMBean.nuevo}"/>
                        <h:outputText value="#{ordenFabricacionMBean.detaOpDto.id}" rendered="#{sessionMBean.accionDetalle != applicationMBean.nuevo}" styleClass="txtCampo"/>
                        
                        <h:outputLabel for="itOperacion" styleClass="label" value="#{i18n['form.orden.fabricacion.operacion']}"/>
                        <p:selectOneMenu id="itOperacion" value="#{ordenFabricacionMBean.detaOpDto.planProdOperacionDto}" required="true" converter="planProdOperacionConvert" style="#{applicationMBean.estiloObligatorio}" disabled="#{sessionMBean.accionDetalle == applicationMBean.ver}">
                            <f:selectItems value="#{ordenFabricacionMBean.listaOperacion}" var="planProduccionOperacionDto" itemLabel="#{planProduccionOperacionDto.nombre}" itemValue="#{planProduccionOperacionDto}"/>                            
                        </p:selectOneMenu>
                        
                        <h:outputLabel for="itProceso" styleClass="label" value="#{i18n['form.orden.fabricacion.proceso']}"/>
                        <p:selectOneMenu id="itProceso" value="#{ordenFabricacionMBean.detaOpDto.procesoDto}" required="true" converter="procesoConvert" style="#{applicationMBean.estiloObligatorio}" disabled="#{sessionMBean.accionDetalle == applicationMBean.ver}">
                            <f:selectItems value="#{ordenFabricacionMBean.listaProceso}" var="procesoDto" itemLabel="#{procesoDto.descripcion}" itemValue="#{procesoDto}"/>
                        </p:selectOneMenu>
                        
                        <h:outputLabel for="itFecInicio" value="#{i18n['form.orden.fabricacion.fecha.inicio']}" styleClass="label"/>
                        <p:calendar id="itFecInicio" value="#{ordenFabricacionMBean.detaOpDto.fchInicio}" label="#{i18n['form.orden.fabricacion.fecha.inicio']}" pattern="#{applicationMBean.formatoFecha}" required="true"
                                    style="#{applicationMBean.estiloObligatorio}" disabled="#{sessionMBean.accionDetalle == applicationMBean.ver}">
                        </p:calendar>
                        
                        <h:outputLabel for="itFecFin" value="#{i18n['form.orden.fabricacion.fecha.fin']}" styleClass="label"/>
                        <p:calendar id="itFecFin" value="#{ordenFabricacionMBean.detaOpDto.fchFin}" label="#{i18n['form.orden.fabricacion.fecha.inicio']}" pattern="#{applicationMBean.formatoFecha}" required="true"
                                    style="#{applicationMBean.estiloObligatorio}" disabled="#{sessionMBean.accionDetalle == applicationMBean.ver}">
                        </p:calendar>
                        
                        <h:outputLabel for="itTiempoEstimado" value="#{i18n['form.orden.fabricacion.tiempo.estimado']}" styleClass="label"/>
                        <p:inputText id="itTiempoEstimado" label="#{i18n['form.orden.fabricacion.tiempo.estimado']}" style="#{applicationMBean.estiloObligatorio}"
                                     value="#{ordenFabricacionMBean.detaOpDto.tiempoEstimado}"  readonly="#{sessionMBean.accionDetalle == applicationMBean.ver}"
                                     onkeypress="return fn_validaTecla('decimal',this)"
                                     required="false" size="10" >
                            <f:validateLength minimum="1" maximum="9" />
                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                        </p:inputText>
                        
                        <h:outputLabel for="itRunTime" value="#{i18n['form.orden.fabricacion.run.time']}" styleClass="label"/>
                        <p:inputText id="itRunTime" label="#{i18n['form.orden.fabricacion.run.time']}" style="#{applicationMBean.estiloObligatorio}"
                                     value="#{ordenFabricacionMBean.detaOpDto.runTime}"  readonly="true"
                                     onkeypress="return fn_validaTecla('decimal',this)"
                                     required="false" size="10" >
                            <f:validateLength minimum="1" maximum="9" />
                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                        </p:inputText>
                        
                        <h:outputLabel for="itCantidad" value="#{i18n['form.orden.fabricacion.cantidad']}" styleClass="label"/>
                        <p:inputText id="itCantidad" label="#{i18n['form.orden.fabricacion.cantidad']}" style="#{applicationMBean.estiloObligatorio}"
                                     value="#{ordenFabricacionMBean.detaOpDto.cantidad}"  readonly="#{sessionMBean.accionDetalle == applicationMBean.ver}"
                                     onkeypress="return fn_validaTecla('decimal',this)"
                                     required="false" size="10" >
                            <f:validateLength minimum="1" maximum="9" />
                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                        </p:inputText>
                        
                        <h:outputLabel for="itCantidadCompletada" value="#{i18n['form.orden.fabricacion.cantidad.completada']}" styleClass="label"/>
                        <p:inputText id="itCantidadCompletada" label="#{i18n['form.orden.fabricacion.cantidad.completada']}" style="#{applicationMBean.estiloObligatorio}"
                                     value="#{ordenFabricacionMBean.detaOpDto.cantidadCompletada}"  readonly="true"
                                     onkeypress="return fn_validaTecla('decimal',this)"
                                     required="false" size="10" >
                            <f:validateLength minimum="1" maximum="9" />
                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                        </p:inputText>
                        
                        <h:outputLabel for="itUsoCC" value="#{i18n['form.orden.fabricacion.uso.centro.costo']}" styleClass="label"/>
                        <p:inputText id="itUsoCC" label="#{i18n['form.orden.fabricacion.uso.centro.costo']}" style="#{applicationMBean.estiloObligatorio}"
                                     value="#{ordenFabricacionMBean.detaOpDto.usoCentroCosto}"  readonly="#{sessionMBean.accionDetalle == applicationMBean.ver}"
                                     onkeypress="return fn_validaTecla('decimal',this)"
                                     required="false" size="10" >
                            <f:validateLength minimum="1" maximum="9" />
                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}" />
                        </p:inputText>             
                    </h:panelGrid>                    
                </h:panelGrid>
                <p:panel id="pnlAcciones">
                    <h:panelGrid columns="10">
                        <p:commandButton id="btnGuardarOp" update=":msjDialogOp, :frmPrincipal, :frmPrincipal:itTiempoEstimado, :msgs"
                                         title="#{i18n['general.button.guardar.tip']}"
                                         ajax="true"
                                         style="#{applicationMBean.estilosBtnGuardar}"
                                         rendered="#{sessionMBean.accionDetalle!= applicationMBean.ver}"
                                         icon="ui-icon ui-icon-disk"
                                         value="#{i18n['general.button.guardar']}"
                                         action="#{ordenFabricacionMBean.guardarOperacion}"
                                         oncomplete="handleRequestOp(xhr, status, args)">
                        </p:commandButton>                          
                    </h:panelGrid>
                </p:panel>
            </h:form>
        </p:tab>
        <p:tab id="tabPopupProd" title="#{i18n['popup.titulo.orden.fabricacion.productos']}" rendered="#{ordenFabricacionMBean.detaOpDto.id != null}">
            <h:form onsubmit="return checkSubmit();" id="frmPopupProd">
                <h:panelGrid  columns="8" cellpadding="4" id="pgProd">
                    <p:commandButton title="#{i18n['form.orden.fabricacion.boton.nuevo.producto']}"
                                     icon="ui-icon ui-icon-plus"
                                     style="#{applicationMBean.estilosBtnNuevoDetalle}"
                                     value="#{i18n['form.orden.fabricacion.boton.nuevo.producto']}"
                                     update=":frmProd:pgFormDtoProd"
                                     oncomplete="carDialogProd.show()"
                                     rendered="#{sessionMBean.accionDetalle != applicationMBean.ver}"
                                     action="#{ordenFabricacionMBean.nuevoProducto}">
                    </p:commandButton>
                </h:panelGrid>
                
                <h:panelGrid columns="1">
                    <p:dataTable id="tblProducto" value="#{ordenFabricacionMBean.detaOpDto.listaProductos}" var="detaProd" paginator="true"
                                 paginatorPosition="top" rows="#{sessionMBean.cantidadRegistros}" widgetVar="widTable">
                        <p:column style="text-align:center;">
                            <h:panelGrid columns="8" cellspacing="5" styleClass="estiloPanelGrid">
                                <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.ver.tip']}"
                                                 action="#{ordenFabricacionMBean.verProducto}" ajax="true"
                                                 oncomplete="carDialogProd.show()"
                                                 update=":frmProd:pgFormDtoProd">
                                    <f:setPropertyActionListener value="#{detaProd}" target="#{ordenFabricacionMBean.detaProdDto}"/>
                                </p:commandButton>
                                <p:commandButton icon="ui-icon ui-icon-pencil" title="#{i18n['general.button.editar.tip']}"
                                                 update=":frmProd:pgFormDtoProd"
                                                 action="#{ordenFabricacionMBean.editarProducto}"
                                                 rendered="#{sessionMBean.accionDetalle != applicationMBean.ver}"
                                                 oncomplete="carDialogProd.show()" ajax="true">
                                    <f:setPropertyActionListener value="#{detaProd}" target="#{ordenFabricacionMBean.detaProdDto}"/>
                                </p:commandButton>
                            </h:panelGrid>
                        </p:column>
                        <p:column headerText="#{i18n['general.label.id']}" styleClass="general" style="text-align: left;">
                            <h:outputText value="#{detaProd.id}" styleClass="general"/>
                        </p:column>
                        <p:column headerText="#{i18n['form.orden.fabricacion.producto']}" styleClass="general" style="text-align: left;">
                            <h:outputText value="#{detaProd.productoDetaDto.productoDto.descripcion}" styleClass="general"/>
                        </p:column>
                        <p:column headerText="#{i18n['form.orden.fabricacion.tipo.producto']}" styleClass="general">
                            <h:outputText value="#{detaProd.tipoProductoDto.descripcion}" styleClass="general"/>
                        </p:column>
                        <p:column headerText="#{i18n['form.orden.fabricacion.cantidad.movida']}" styleClass="general">
                            <h:outputText value="#{detaProd.cantidadMovida}" styleClass="general">
                                <f:convertNumber pattern="#{applicationMBean.formatoMontos}"/>
                            </h:outputText>
                        </p:column>
                        <p:column headerText="#{i18n['form.orden.fabricacion.uom']}" styleClass="general">
                            <h:outputText value="#{detaProd.unidadMedidaDto.nombre}" styleClass="general"/>
                        </p:column>
                        <p:column headerText="#{i18n['form.orden.fabricacion.costo.componente']}" styleClass="general">
                            <h:outputText value="#{detaProd.costoComponente}" styleClass="general">
                                <f:convertNumber pattern="#{applicationMBean.formatoMontos}"/>
                            </h:outputText>
                        </p:column>                       
                    </p:dataTable>
                </h:panelGrid>
            </h:form>
        </p:tab>
    </p:tabView>
</html>